#pragma once

#pragma comment(lib, "XAPOFX.lib");


class Effect
{
public:
	Effect(int num);
	virtual ~Effect(void);

    virtual HRESULT apply(BYTE* buffer, DWORD BufferSize, WAVEFORMATEXTENSIBLE* pWfx)=0;
	int GetNumberEffect(void) {return number; }
	void SetNumberEffect(int num) {number = num;}

	virtual void EnableEffect() {enable = true;}
	virtual void DisableEffect() {enable = false;}
	virtual bool GetEffectState() {return enable;}
private:
	int number;
	bool enable;
};
